1. Technical Field
The present invention relates to provisioning and transporting of small computer system interface (SCSI) data over computer networks. More particularly, although not exclusively, the invention relates to improvements in SCSI data transfer using Multi Protocol Label Switching (MPLS).
2. Background Art
With the proliferation and geographical distribution of data, it is evident that the need for management of storage data and accessing volumes of data over the computer network is a key necessity for organizations which rely on or use any form of IT infrastructure.
A number of technologies such as Fibre Channel and Internet SCSI (iSCSI) attempt to address these needs, however, each of these solutions have their limitations. Fibre Channel, for example, has high Total Cost of Ownership (TCO) and requires relatively complex management. iSCSI though promises the data transfer by utilizing the legacy computer networks and thereby safeguarding this investment, suffers from Transmission Control Protocol/Internet Protocol (TCP/IP) packet processing problems on the host side and IP network problems on the network side.
The Small Computer Systems Interface (SCSI) has matured into a popular family of protocols that enables systems to communicate with I/O devices, especially storage devices. SCSI is a client-server architecture. The clients, typically Host Bus Adapters (HBAs) are called Initiators. Initiators issue SCSI commands to request services from components, logical units, of a server known as a Target. The parallel SCSI interface has a product depth and breadth that exceeds any other present I/O interface and it is supported by a wider variety of peripherals than most other types of interface. The list of supported peripherals includes tape drives, optical drives, hard disk drives, scanners, printers, disk array subsystems (RAID) and CD-ROM drives.
The Initiator-Target model was developed around bus structure model, which restricted the large physical separation of Initiators and Targets; and was suitable for accessing I/O devices connected directly (or in daisy chained configuration) to the host.
iSCSI was developed to enable block data transfers over TCP/IP Networks. As such, this technique takes advantage of the investment in legacy or existing IP networks and addresses the distance limitations of parallel SCSI. This is accomplished by using the TCP/IP protocol to transport SCSI data between SCSI nodes. However, iSCSI suffers from TCP/IP packet processing problems and IP network problems. The processing of TCP/IP packets is a CPU-intensive process, which greatly reduces the performance of other applications running on the host CPU. Further, iSCSI data transfer may suffer from network congestion and lack of QoS control functionality. This discourages use of applications that require certain or specified response time or those, which demand real-time data delivery.
Because of these limitations, iSCSI solutions are not adopted ubiquitously by organizations that need to interconnect geographically distributed data islands. There exists a need for the functionality of transporting SCSI data over the computer networks without intensive host CPU usage and load problems or congestion on the networks.
Multi Protocol Label Switching (MPLS) is growing in popularity as a set of protocols for provisioning and managing computer networks. MPLS exhibits a number of major advantages in terms of gigabit forwarding, network scaling, traffic engineering and Quality of Service (QoS). MPLS overlays an Internet Protocol (IP) network to allow resources to be reserved and routes pre-determined. Effectively, MPLS superimposes a connection-oriented framework over the connectionless IP network. It thus provides virtual links or tunnels through the network to connect nodes that lie at the edge of the network.
For data transfers which are sensitive to delays and disruptions; high levels of reliability, availability coupled with the ease of maintenance of networks is required. Also in the case of large amounts of mission critical data or applications which require a certain or specified response time, a reasonable amount of bandwidth may be required to avoid traffic congestion.
The present invention overcomes or reduces the aforementioned limitations and provides a communication method for carrying SCSI commands and data over the network with minimum congestion, high reliability, low latency and minimum host CPU usage.